package com.example.demo01.Service.webService;

import com.example.demo01.Dao.webDao.NVWeightDao;
import com.example.demo01.Entity.webEntity.NVWeight;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class NVWeightService {

    //自动装配
    @Autowired
    NVWeightDao nvWeightDao;

    /**
     * 按照护理等级获取对应的服务次数，并计算权重
     * */
    public List<NVWeight> getNVWeightListByNurseLevel(){ return nvWeightDao.getNVWeightListByNurseLevel(); }

    /**
     * 按照护理等级获取对应的服务次数，并计算权重——格式化后的数据
     * */
    public List<List> getNVWeightListByNurseLevelFormat() { return nvWeightDao.getNVWeightListByNurseLevelFormat(); }

    /**
     * 按照护理等级获取对应的服务次数——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByNurseLevelTime(Long start,Long end){ return nvWeightDao.getNVWeightByNurseLevelTime(start,end);}

    /**
     * 按照护理等级获取对应的服务次数——时间限定——格式化后的数据
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByNurseLevelTimeFormat(Long start,Long end){ return  nvWeightDao.getNVWeightByNurseLevelTimeFormat(start,end); }


    /**
     * 按照省级划分
     * */
    public List<NVWeight> getNVWeightByProvinceCode(){ return  nvWeightDao.getNVWeightByProvinceCode(); }

    /**
     * 按照省级划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByProvinceCodeTime(Long start,Long end){ return nvWeightDao.getNVWeightByProvinceCodeTime(start, end);}

    /**
     * 按照省级划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByProvinceCodeTimeFormat(Long start,Long end){ return nvWeightDao.getNVWeightByProvinceCodeTimeFormat(start, end);}
    /**
     * 按照省级划分——格式化的结果
     * */
    public List<List> getNVWeightByProvinceCodeFormat(){ return nvWeightDao.getNVWeightByProvinceCodeFormat();}

    /**
     * 按照市区划分
     * */
    public List<NVWeight> getNVWeightByCityCode(){ return nvWeightDao.getNVWeightByCityCode();}

    /**
     * 按照市区划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<NVWeight> getNVWeightByCityCodeTime(Long start,Long end){ return nvWeightDao.getNVWeightByCityCodeTime(start, end);}
    /**
     * 按照市区划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByCityCodeTimeFormat(Long start,Long end){ return nvWeightDao.getNVWeightByCityCodeTimeFormat(start, end);}

    /**
     * 按照市区划分——格式化的结果
     * */
    public List<List> getNVWeightByCityCodeFormat(){ return nvWeightDao.getNVWeightByCityCodeFormat();}

    /**
     * 按照县乡划分
     * */
    public List<NVWeight> getNVWeightByCountryCode(){ return nvWeightDao.getNVWeightByCountryCode(); }


    /**
     * 按照县乡划分——时间限定
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByCountryCodeTime(Long start,Long end){ return nvWeightDao.getNVWeightByCountryCodeTimeFormat(start, end);}

    /**
     * 按照县乡划分——时间限定——格式化的结果
     * @param start 起始时间
     * @param end 终止时间
     * */
    public List<List> getNVWeightByCountryCodeTimeFormat(Long start,Long end){ return nvWeightDao.getNVWeightByCountryCodeTimeFormat(start, end);}

    /**
     * 按照县乡划分——格式化的结果
     * */
    public List<List> getNVWeightByCountryCodeFormat(){return nvWeightDao.getNVWeightByCountryCodeFormat();}


    /**
     * 根据idNum，按月份统计报警信息及其报警次数
     * @param idnum 身份证号
     * */
    public  List<NVWeight> getNVWeightByIdNumUnderMonth(String idnum){ return nvWeightDao.getNVWeightByIdNumUnderMonth(idnum);}

}
